CREATE PROC [dbo].[Search]
    @Code VARCHAR(MAX),
    @Anbar VARCHAR(3)
AS
DECLARE @TmpCode VARCHAR(30) = NULL;

SET @Code = REPLACE(@Code,'','')

DECLARE @AnbarStatus TINYINT  = (SELECT CtrMojodi FROM dbo.AnbarId WHERE A_Code = @Anbar);

IF LEN(@Code) >= 53
SET @Code = SUBSTRING(@Code,4,13)

SET @TmpCode =
(
    SELECT ISNULL(K_Code, 0) k_code
    FROM KalaId
    WHERE k_code = @Code
          OR (Barcode = @Code)
);


IF (@TmpCode <> '')
    SELECT Name1,
           ISNULL(K.K_Code, ' ') K_Code,
           ISNULL(Price_Consumer, 0) Price_Consumer,
           ISNULL(Price_Forosh, 0) Price_Forosh,
           ISNULL(ProductionPrice, 0) ProductionPrice,
           ISNULL(Mojodi, 0) Mojodi,
           ISNULL(R_Unit1_2, 0) R_Unit1_2,
		   CASE
                    WHEN @AnbarStatus = 0 THEN
                        0
                    WHEN @AnbarStatus = 1 THEN
                        1
                    ELSE
                        K.CtrMojodi
                END
				Ctr
    FROM KalaId K
        INNER JOIN Anbar A
            ON A.K_Code = K.K_Code
               AND A.A_Code = @Anbar
               AND Active_Flag = 0
    WHERE (
              K.K_Code = @Code
              OR K.Barcode = @Code
          );



ELSE
BEGIN
    SET @TmpCode =
    (
        SELECT TOP (1)
               ISNULL(K_Code, 0) k_code
        FROM TblBasket_Kala
        WHERE K_Code_B = @Code
    );

    SELECT Name1,
           ISNULL(K.K_Code, ' ') K_Code,
           ISNULL(Price_Consumer, 0) Price_Consumer,
           ISNULL(Price_Forosh, 0) Price_Forosh,
           ISNULL(ProductionPrice, 0) ProductionPrice,
           ISNULL(Mojodi, 0) Mojodi,
           ISNULL(R_Unit1_2, 0) R_Unit1_2,
		   CASE
                    WHEN @AnbarStatus = 0 THEN
                        0
                    WHEN @AnbarStatus = 1 THEN
                        1
                    ELSE
                        K.CtrMojodi
                END
				Ctr
    FROM KalaId K
        INNER JOIN Anbar A
            ON A.K_Code = K.K_Code
               AND A.A_Code = @Anbar
               AND Active_Flag = 0
    WHERE (
              K.K_Code = @TmpCode
              OR K.Barcode = @TmpCode
          );
END;
